Memory devices are typically provided as internal storage areas in the computer. The term memory identifies data storage that comes in the form of integrated circuit chips. In general, memory devices contain an array of memory cells for storing data, and row and column decoder circuits coupled to the array of memory cells for accessing the array of memory cells in response to an external address.
There are several different types of memory such as random access memory (RAM) and read only memory (ROM). RAM is typically used as main memory in a computer environment. One can repeatedly read data from and write data into RAM. Most RAM is volatile, which means that it requires a steady flow of electricity to maintain its contents. When the power is turned off, the data in RAM is lost.
This is in contrast to ROM that generally only permits the user to read data already stored in the ROM but the ROM retains data after power is removed (i.e., non-volatile). Computers almost always contain a small amount of ROM that holds instructions for starting up the computer. Unlike RAM, ROM generally cannot be written to in routine operation.
Yet another type of non-volatile memory is flash memory. A flash memory is a type of EEPROM that can be erased and reprogrammed in blocks instead of one byte at a time. Many modem PCs have their BIOS stored on a flash memory chip so that it can easily be updated if necessary. Flash memory is also popular in modems because it enables the modem manufacturer to support new protocols as they become standardized.
Another type of non-volatile memory is a nitride read only memory (NROM). NROM has some of the characteristics of flash memory but does not require the special fabrication processes of flash memory. NROM can be implemented using a standard CMOS process.
Because of NROM's CMOS process, the NROM can be embedded into other architectures, such as microcontrollers, that also use the CMOS process. However, one problem with embedding the NROM is that an NROM memory array, susceptible for embedding, requires high current consumption for program and erase.
For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for a way to erase NROM arrays without being over-erased.